﻿<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<!-- saved from url=(0061)http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html -->
<HTML xmlns="http://www.w3.org/1999/xhtml"><HEAD><TITLE>通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus.cn - 博客园</TITLE>
<META http-equiv=Content-Type content="text/html; charset=utf-8">
<META content=Vista,.NET,3.0,通过制作一个简单的时钟学习WPF中DispatcherTimer的使用,Level,100 
name=keywords><LINK 
href="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/common.css" 
type=text/css rel=stylesheet><LINK id=MainCss 
href="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/style.css" 
type=text/css rel=stylesheet><LINK 
href="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/common2.css" 
type=text/css rel=stylesheet><LINK 
href="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/shCore.css" 
type=text/css rel=stylesheet><LINK 
href="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/shThemeDefault.css" 
type=text/css rel=stylesheet><LINK title=RSS 
href="http://www.cnblogs.com/tonyqus/rss" type=application/rss+xml 
rel=alternate><LINK title=RSD href="http://www.cnblogs.com/tonyqus/rsd.xml" 
type=application/rsd+xml rel=EditURI>
<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/jquery.js" 
type=text/javascript></SCRIPT>

<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/common.js" 
type=text/javascript></SCRIPT>

<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/jquery.json-1.3.min.js" 
type=text/javascript></SCRIPT>

<META content="MSHTML 6.00.2900.5897" name=GENERATOR></HEAD>
<BODY>
<FORM id=Form1 name=Form1 action=599334.html method=post>
<DIV><INPUT id=__EVENTTARGET type=hidden name=__EVENTTARGET> <INPUT 
id=__EVENTARGUMENT type=hidden name=__EVENTARGUMENT> <INPUT 
id="&#13;&#10;__VIEWSTATE" type=hidden name=__VIEWSTATE> </DIV>
<SCRIPT type=text/javascript>
//<![CDATA[
var theForm = document.forms['Form1'];
if (!theForm) {
    theForm = document.Form1;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}
//]]>
</SCRIPT>
<!--done-->
<DIV id=home>
<DIV id=header>
<DIV id=blogTitle><A id=lnkBlogLogo href="http://www.cnblogs.com/tonyqus/"><IMG 
id=blogLogo alt=返回主页 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/logo.gif"></A> 
<!--done-->
<H1><A class=headermaintitle id=Header1_HeaderTitle 
href="http://www.cnblogs.com/tonyqus/">tonyqus.cn</A></H1>
<H2>
<P style="COLOR: black"><B>专心学习业务</B></P><A style="COLOR: black" 
href="http://www.codeplex.com/npoi"><B>NPOI - 一个能帮助你直接读写office文件流的库 (QQ交流群: 
78142590)</B></A></H2></DIV><!--end: blogTitle 博客的标题和副标题 -->
<DIV id=navigator><!--done-->
<UL id=navList>
  <LI><A class=menu id=MyLinks1_HomeLink href="http://www.cnblogs.com/">博客园</A> 
  </LI>
  <LI><A class=menu id=MyLinks1_SpaceLink 
  href="http://space.cnblogs.com/">社区</A> </LI>
  <LI></LI>
  <LI><A class=menu id=MyLinks1_NewPostLink 
  href="http://www.cnblogs.com/tonyqus/admin/EditPosts.aspx?opt=1">新随笔</A> </LI>
  <LI><A class=menu id=MyLinks1_ContactLink accessKey=9 
  href="http://space.cnblogs.com/msg/send/Tony++Qu">联系</A> </LI>
  <LI><A class=menu id=MyLinks1_Admin 
  href="http://www.cnblogs.com/tonyqus/admin/EditPosts.aspx">管理</A> </LI>
  <LI><A class=menu id=MyLinks1_Syndication 
  href="http://www.cnblogs.com/tonyqus/rss">订阅</A> <A class=aHeaderXML 
  id=MyLinks1_XMLLink href="http://www.cnblogs.com/tonyqus/rss"><IMG 
  style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" 
  alt=订阅 
  src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/rss.gif"></A> 
  </LI></UL>
<DIV class=blogStats><!--done-->随笔- 290&nbsp; 文章- 1&nbsp; 评论- 1814&nbsp; </DIV><!--end: blogStats --></DIV><!--end: navigator 博客导航栏 --></DIV><!--end: header 头部 -->
<DIV id=main>
<DIV id=mainContent>
<DIV class=forFlow><!--done-->
<DIV id=topics>
<DIV class=post>
<H1 class=postTitle><A class=postTitle2 id=ctl04_TitleUrl 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html">通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 
Level 100</A> </H1>
<DIV class=clear></DIV>
<DIV class=postBody>
<P>作者：Tony 
Qu<BR>注：大家可以对本文的写作风格作一些点评，看看是否喜欢，是否有更好的建议，先谢谢了!<BR><BR>Timer控件是WinForm开发中必备的控件之一，在.net 
3.0之前的版本中，我们可以很方便的从工具箱中拖出一个Timer来，在组件可视化列表中，我们会看到一个时钟，这就表示该WinForm中存在一个计时器。<BR><BR>可能是CTP版本的关系，在WPF的VS2005插件的工具箱中，根本无法找到Timer控件的踪影。看来我只有自力更生了<IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/emsmile.gif" 
align=absMiddle border=0><BR><BR>既然我们要制作时钟，首先来画界面，自然要先定义窗口的XAML，如下：</P>
<DIV 
style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top><SPAN style="COLOR: #0000ff">&lt;</SPAN><SPAN 
style="COLOR: #800000">Window&nbsp;</SPAN><SPAN 
style="COLOR: #ff0000">x:Class</SPAN><SPAN 
style="COLOR: #0000ff">="EClock.Window1"</SPAN><SPAN 
style="COLOR: #ff0000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;xmlns</SPAN><SPAN 
style="COLOR: #0000ff">="http://schemas.microsoft.com/winfx/2006/xaml/presentation"</SPAN><SPAN 
style="COLOR: #ff0000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;xmlns:x</SPAN><SPAN 
style="COLOR: #0000ff">="http://schemas.microsoft.com/winfx/2006/xaml"</SPAN><SPAN 
style="COLOR: #ff0000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;Title</SPAN><SPAN 
style="COLOR: #0000ff">="EClock"</SPAN><SPAN 
style="COLOR: #ff0000">&nbsp;Height</SPAN><SPAN 
style="COLOR: #0000ff">="97"</SPAN><SPAN 
style="COLOR: #ff0000">&nbsp;Width</SPAN><SPAN 
style="COLOR: #0000ff">="187"</SPAN><SPAN style="COLOR: #ff0000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">&lt;</SPAN><SPAN style="COLOR: #800000">Grid</SPAN><SPAN 
style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">&lt;</SPAN><SPAN 
style="COLOR: #800000">TextBlock&nbsp;</SPAN><SPAN 
style="COLOR: #ff0000">Margin</SPAN><SPAN 
style="COLOR: #0000ff">="14,11,19,12"</SPAN><SPAN 
style="COLOR: #ff0000">&nbsp;Name</SPAN><SPAN 
style="COLOR: #0000ff">="textBlock1"</SPAN><SPAN 
style="COLOR: #ff0000">&nbsp;Loaded</SPAN><SPAN 
style="COLOR: #0000ff">="OnTextBlockLoaded"</SPAN><SPAN 
style="COLOR: #ff0000">&nbsp;FontFamily</SPAN><SPAN 
style="COLOR: #0000ff">="Time&nbsp;New&nbsp;Roman"</SPAN><SPAN 
style="COLOR: #ff0000">&nbsp;FontSize</SPAN><SPAN 
style="COLOR: #0000ff">="40"</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN 
style="COLOR: #000000">00:00:00</SPAN><SPAN 
style="COLOR: #0000ff">&lt;/</SPAN><SPAN 
style="COLOR: #800000">TextBlock</SPAN><SPAN 
style="COLOR: #0000ff">&gt;</SPAN><SPAN style="COLOR: #000000"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top>&nbsp;&nbsp;</SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN 
style="COLOR: #800000">Grid</SPAN><SPAN style="COLOR: #0000ff">&gt;</SPAN><SPAN 
style="COLOR: #000000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top></SPAN><SPAN style="COLOR: #0000ff">&lt;/</SPAN><SPAN 
style="COLOR: #800000">Window</SPAN><SPAN 
style="COLOR: #0000ff">&gt;</SPAN></DIV>
<P>有心人已经应该发现了，这个程序叫做EClock，而这个Window则叫做Window1（可以从x:Class中看出，这是code-behind代码的引用）<BR><BR>我定义了一个TextBlock，ID为textBlock1。其他的一些基本属性如FontFamily, 
FontSize, Margin就不说了，大家都会设置。来说说这个Loaded属性，目前的WPF还不支持在可视化界面下生成事件处理程序（event 
handler），所以得自己加，这里的Loaded就是TextBlock的加载事件，那么里面的OnTextBlockLoaded自然就是事件处理程序的名称。<BR><BR>首先，我在WPF 
窗口Window1的Class声明中定义了一个新的变量，叫做timer，请注意我们并没有使用System.Timers.Timer，而是使用了DispatcherTimer，至于原因将在本文最后讲解。定义代码如下：</P>
<DIV 
style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><SPAN 
style="COLOR: #000000">System.Windows.Threading.DispatcherTimer 
timer;</SPAN></DIV>
<P>下面我们来看看这个事件处理程序的内容：</P>
<DIV 
style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top><SPAN style="COLOR: #0000ff">private</SPAN><SPAN 
style="COLOR: #000000">&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">void</SPAN><SPAN 
style="COLOR: #000000">&nbsp;OnTextBlockLoaded(</SPAN><SPAN 
style="COLOR: #0000ff">object</SPAN><SPAN 
style="COLOR: #000000">&nbsp;sender,&nbsp;RoutedEventArgs&nbsp;e)<BR><IMG 
id=Codehighlighter1_65_252_Open_Image 
onclick="this.style.display='none'; Codehighlighter1_65_252_Open_Text.style.display='none'; Codehighlighter1_65_252_Closed_Image.style.display='inline'; Codehighlighter1_65_252_Closed_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockStart.gif" 
align=top><IMG id=Codehighlighter1_65_252_Closed_Image style="DISPLAY: none" 
onclick="this.style.display='none'; Codehighlighter1_65_252_Closed_Text.style.display='none'; Codehighlighter1_65_252_Open_Image.style.display='inline'; Codehighlighter1_65_252_Open_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ContractedBlock.gif" 
align=top></SPAN><SPAN id=Codehighlighter1_65_252_Closed_Text 
style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/dot.gif"></SPAN><SPAN 
id=Codehighlighter1_65_252_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/InBlock.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timer = new 
System.Windows.Threading.DispatcherTimer();<BR></SPAN><SPAN 
style="COLOR: #000000"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/InBlock.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timer.Interval = new 
TimeSpan(0,0,1);</SPAN><SPAN 
style="COLOR: #000000">&nbsp;&nbsp;&nbsp;</SPAN><SPAN 
style="COLOR: #008000">//</SPAN><SPAN style="COLOR: #008000">间隔1秒</SPAN><SPAN 
style="COLOR: #008000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/InBlock.gif" 
align=top></SPAN><SPAN 
style="COLOR: #000000">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timer.Tick += new 
EventHandler(timer_Tick);</SPAN><SPAN style="COLOR: #000000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/InBlock.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;timer.Start();<BR></SPAN><SPAN 
style="COLOR: #000000"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockEnd.gif" 
align=top>}</SPAN></SPAN></DIV>
<P>如注释所说，我把间隔设置为1秒。该计时器的间隔事件也是Tick事件。好了，一切就绪，最后让我们来看看timer_Tick中的代码：</P>
<DIV 
style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top><SPAN style="COLOR: #0000ff">void</SPAN><SPAN 
style="COLOR: #000000">&nbsp;timer_Tick(</SPAN><SPAN 
style="COLOR: #0000ff">object</SPAN><SPAN 
style="COLOR: #000000">&nbsp;sender,&nbsp;EventArgs&nbsp;e)<BR><IMG 
id=Codehighlighter1_44_102_Open_Image 
onclick="this.style.display='none'; Codehighlighter1_44_102_Open_Text.style.display='none'; Codehighlighter1_44_102_Closed_Image.style.display='inline'; Codehighlighter1_44_102_Closed_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockStart.gif" 
align=top><IMG id=Codehighlighter1_44_102_Closed_Image style="DISPLAY: none" 
onclick="this.style.display='none'; Codehighlighter1_44_102_Closed_Text.style.display='none'; Codehighlighter1_44_102_Open_Image.style.display='inline'; Codehighlighter1_44_102_Open_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ContractedBlock.gif" 
align=top></SPAN><SPAN id=Codehighlighter1_44_102_Closed_Text 
style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/dot.gif"></SPAN><SPAN 
id=Codehighlighter1_44_102_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/InBlock.gif" 
align=top>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;textBlock1.Text&nbsp;</SPAN><SPAN 
style="COLOR: #000000">=</SPAN><SPAN 
style="COLOR: #000000">&nbsp;DateTime.Now.ToLongTimeString();<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockEnd.gif" 
align=top>}</SPAN></SPAN></DIV>
<P><BR>似乎和原来的Tick事件中的代码没啥两样，那就运行一下看看效果吧。。。。<BR><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/EClock1.png" 
border=0>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/EClock2.png" 
border=0><BR><BR>左侧为Windows 
2003下运行结果，右侧为Vista下运行结果（发觉一个细节，ToLongTimeString在不同环境下返回的字符串尽然不一样，有谁知道为啥吗？）<BR><BR>完工！一个简单的电子钟做好了。下面让我们来讲讲为什么我们没有用我们相对熟悉的System.Timers.Timer。其实在.net 
3.0中这个Timer已经与过去我们所了解的Timer不同了，如果我们在这个例子中使用该计时器的话，我们将收到一下错误信息：<BR><BR>由于其他线程拥有此对象，因此调用线程无法对其进行访问。<BR><BR>根据MSDN文档的说明，System.Timers.Timer是在一个独立的线程上实现的，而我们要更新的TextBlock位于窗口线程中，所以会出现以上错误。所以在国外的大部分的WPF 
Blog中，作者们比较喜欢使用DispatcherTimer，因为它简单方便，似乎和过去Timer更相似。至于System.Timers.Timer到底该如何实现对UI的更新，我还没有底，如果有谁已经知道怎么弄了，请分享一下。 
<BR><BR>=======================Update on 
2006.12.23======================<BR>基于System.Timers.Timer的解决方案（由<A 
id=AjaxHolder_Comments_CommentList_ctl00_NameLink target=_blank 
snap_preview_added="spa"><FONT color=#223355>Tyrael</FONT></A> 提供）</P>
<DIV 
style="BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #cccccc 1px solid; PADDING-LEFT: 4px; FONT-SIZE: 13px; PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #eeeeee"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top><SPAN style="COLOR: #0000ff">private</SPAN><SPAN 
style="COLOR: #000000">&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">delegate</SPAN><SPAN 
style="COLOR: #000000">&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">void</SPAN><SPAN 
style="COLOR: #000000">&nbsp;UpdateTimer();<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top></SPAN><SPAN style="COLOR: #0000ff">private</SPAN><SPAN 
style="COLOR: #000000">&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">void</SPAN><SPAN 
style="COLOR: #000000">&nbsp;UpdateTimerCallback()<BR><IMG 
id=Codehighlighter1_73_126_Open_Image 
onclick="this.style.display='none'; Codehighlighter1_73_126_Open_Text.style.display='none'; Codehighlighter1_73_126_Closed_Image.style.display='inline'; Codehighlighter1_73_126_Closed_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockStart.gif" 
align=top><IMG id=Codehighlighter1_73_126_Closed_Image style="DISPLAY: none" 
onclick="this.style.display='none'; Codehighlighter1_73_126_Closed_Text.style.display='none'; Codehighlighter1_73_126_Open_Image.style.display='inline'; Codehighlighter1_73_126_Open_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ContractedBlock.gif" 
align=top></SPAN><SPAN id=Codehighlighter1_73_126_Closed_Text 
style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/dot.gif"></SPAN><SPAN 
id=Codehighlighter1_73_126_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/InBlock.gif" 
align=top>textBlock1.Text&nbsp;</SPAN><SPAN style="COLOR: #000000">=</SPAN><SPAN 
style="COLOR: #000000">&nbsp;DateTime.Now.ToLongTimeString();<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockEnd.gif" 
align=top>}</SPAN></SPAN><SPAN style="COLOR: #000000"><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top><BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/None.gif" 
align=top></SPAN><SPAN style="COLOR: #0000ff">void</SPAN><SPAN 
style="COLOR: #000000">&nbsp;timer_Elapsed(</SPAN><SPAN 
style="COLOR: #0000ff">object</SPAN><SPAN 
style="COLOR: #000000">&nbsp;sender,&nbsp;System.Timers.ElapsedEventArgs&nbsp;e)<BR><IMG 
id=Codehighlighter1_197_309_Open_Image 
onclick="this.style.display='none'; Codehighlighter1_197_309_Open_Text.style.display='none'; Codehighlighter1_197_309_Closed_Image.style.display='inline'; Codehighlighter1_197_309_Closed_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockStart.gif" 
align=top><IMG id=Codehighlighter1_197_309_Closed_Image style="DISPLAY: none" 
onclick="this.style.display='none'; Codehighlighter1_197_309_Closed_Text.style.display='none'; Codehighlighter1_197_309_Open_Image.style.display='inline'; Codehighlighter1_197_309_Open_Text.style.display='inline';" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ContractedBlock.gif" 
align=top></SPAN><SPAN id=Codehighlighter1_197_309_Closed_Text 
style="BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; DISPLAY: none; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; BACKGROUND-COLOR: #ffffff"><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/dot.gif"></SPAN><SPAN 
id=Codehighlighter1_197_309_Open_Text><SPAN style="COLOR: #000000">{<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/InBlock.gif" 
align=top>Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal,&nbsp;</SPAN><SPAN 
style="COLOR: #0000ff">new</SPAN><SPAN 
style="COLOR: #000000">&nbsp;UpdateTimer(UpdateTimerCallback));&nbsp;<BR><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ExpandedBlockEnd.gif" 
align=top>}</SPAN></SPAN></DIV><BR>这里的timer_Elapsed事件处理程序对应于Timer的Elapsed事件 
<DIV id=digg_block>
<DIV id=div_digg>
<DIV class=diggit onclick=DiggIt(599334,8005,1)><SPAN class=diggnum 
id=digg_count_599334>0</SPAN> </DIV>
<DIV class=buryit onclick=DiggIt(599334,8005,2)><SPAN class=burynum 
id=bury_count_599334>0</SPAN> </DIV>
<DIV class=clear></DIV><SPAN id=span_isdigged_599334 
style="DISPLAY: none">0</SPAN> 
<DIV class=diggword id=digg_word_599334>(请您对文章做出评价)</DIV></DIV></DIV>
<DIV class=clear></DIV>
<DIV id=post_next_prev><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/14/591315.html">« 
</A>上一篇：<A title="发布于2006-12-14 18:37" 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/14/591315.html">[翻译] 
理解IIS7的用户和组</A><BR><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/26/603325.html">» 
</A>下一篇：<A title="发布于2006-12-26 17:12" 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/26/603325.html">如何在运行时改变User 
Profile的Provider</A><BR></DIV>
<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/google_service.js" 
type=text/javascript></SCRIPT>

<SCRIPT type=text/javascript>
    try {
        GS_googleAddAdSenseService("ca-pub-4210569241504288");
        GS_googleEnableAllServices();
    }
    catch (e) { }
</SCRIPT>

<SCRIPT type=text/javascript>
    try {
        GA_googleAddSlot("ca-pub-4210569241504288", "cnblogs_blogpost_body");
        GA_googleAddSlot("ca-pub-4210569241504288", "cnblogs_commentbox_up");
        GA_googleAddSlot("ca-pub-4210569241504288", "cnblogs_blogpost_bottom");
    }
    catch (e) { }
</SCRIPT>

<SCRIPT type=text/javascript>
    try {
        GA_googleFetchAds();
    } catch (e) { }
</SCRIPT>

<SCRIPT type=text/javascript>
    var blog_ad_has_shown = false;
</SCRIPT>
</DIV>
<DIV class=postDesc>posted @ 2006-12-21 17:34 <A 
href="http://www.cnblogs.com/tonyqus/">Tony Qu</A> 阅读(3014) <A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">评论(9)</A> 
&nbsp;<A 
href="http://www.cnblogs.com/tonyqus/admin/EditPosts.aspx?postid=599334">编辑</A> 
<A href="http://www.cnblogs.com/tonyqus/AddToFavorite.aspx?id=599334">收藏</A> <A 
onclick="PutInWz();return false;" 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#">网摘</A> 
所属分类: <A href="http://www.cnblogs.com/tonyqus/category/77402.html">Vista / .NET 
3.0</A></DIV></DIV><IMG height=1 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/599334.jpg" 
width=1> <!--
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/">
<rdf:Description
rdf:about="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html"
dc:identifier="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html"
dc:title=""
trackback:ping="http://www.cnblogs.com/tonyqus/services/trackbacks/599334.aspx" />
</rdf:RDF>
--></DIV><!--end: topics 文章、评论容器--><A name=pagedcomment></A><!--done--><BR>
<DIV class=feedback_area_title>发表评论</DIV>
<DIV class=feedbackNoItems><SPAN id=span_comment_maxid 
style="DISPLAY: none">831847</SPAN></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("Tyrael",599654,"")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(599654,"")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl00_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl00$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl00_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#599654">#1楼</A><A 
id=comment_anchor_599654 name=599654></A>2006-12-21 19:56 | <A 
id=Comments1_CommentList_ctl00_NameLink target=_blank>Tyrael[未注册用户]</A> </DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_599654>使用System.Timers.Timer需要通过Dispatcher来实现UI的更新，代码很简单：<BR><BR>private 
delegate void UpdateTimer();<BR><BR>private void 
UpdateTimerCallback()<BR>{<BR>textBlock1.Text = 
DateTime.Now.ToLongTimeString();<BR>}<BR><BR>void timer_Elapsed(object sender, 
System.Timers.ElapsedEventArgs e)<BR>{<BR>//textBlock1.Text = 
DateTime.Now.ToLongTimeString();<BR>Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, 
new UpdateTimer(UpdateTimerCallback)); <BR>}</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("Jason Cui",599671,"Wv81mXMPQovuzuNSg2/3AmItxVa1Y4PITyVk13UZxmXjdLMyF4lJtw==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(599671,"Wv81mXMPQovuzuNSg2/3AmItxVa1Y4PITyVk13UZxmXjdLMyF4lJtw==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
title=查看该作者发表过的评论 
href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=Jason+Cui" 
target=_blank>查看</A>&nbsp;&nbsp;<A id=Comments1_CommentList_ctl01_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl01$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl01_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#599671">#2楼</A><A 
id=comment_anchor_599671 name=599671></A>2006-12-21 20:10 | <A 
id=Comments1_CommentList_ctl01_NameLink href="http://www.cnblogs.com/unfish/" 
target=_blank>Jason Cui</A>&nbsp;<A class=sendMsg2This title=给此人发送站内短消息 
href="http://space.cnblogs.com/msg/send/Jason+Cui">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A> 
</DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_599671>这种开发方式跟一般的WinForm相对有什么好处？</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("Jeffrey Zhao",599760,"VLE/PzZ5Mh0JFecbF3CQRLsuyVmCsadJiw7mKltnrtUpjGpwnjC0jg==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(599760,"VLE/PzZ5Mh0JFecbF3CQRLsuyVmCsadJiw7mKltnrtUpjGpwnjC0jg==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
title=查看该作者发表过的评论 
href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=Jeffrey+Zhao" 
target=_blank>查看</A>&nbsp;&nbsp;<A id=Comments1_CommentList_ctl02_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl02$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl02_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#599760">#3楼</A><A 
id=comment_anchor_599760 name=599760></A>2006-12-21 21:38 | <A 
id=Comments1_CommentList_ctl02_NameLink 
href="http://www.cnblogs.com/JeffreyZhao/" target=_blank>Jeffrey 
Zhao</A>&nbsp;<A class=sendMsg2This title=给此人发送站内短消息 
href="http://space.cnblogs.com/msg/send/Jeffrey+Zhao">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A> 
</DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_599760>我想ToLongTimeString的返回格式应该和你系统的区域设置相关吧，控制面板里可以调整。</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("Jeffrey Zhao",599762,"VLE/PzZ5Mh0JFecbF3CQRLsuyVmCsadJiw7mKltnrtUpjGpwnjC0jg==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(599762,"VLE/PzZ5Mh0JFecbF3CQRLsuyVmCsadJiw7mKltnrtUpjGpwnjC0jg==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
title=查看该作者发表过的评论 
href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=Jeffrey+Zhao" 
target=_blank>查看</A>&nbsp;&nbsp;<A id=Comments1_CommentList_ctl03_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl03$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl03_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#599762">#4楼</A><A 
id=comment_anchor_599762 name=599762></A>2006-12-21 21:41 | <A 
id=Comments1_CommentList_ctl03_NameLink 
href="http://www.cnblogs.com/JeffreyZhao/" target=_blank>Jeffrey 
Zhao</A>&nbsp;<A class=sendMsg2This title=给此人发送站内短消息 
href="http://space.cnblogs.com/msg/send/Jeffrey+Zhao">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A> 
</DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_599762>@Jason Cui <BR>从这个例子里其实看不出什么好处，呵呵。</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("Tony Qu",599823,"5Fq7fZd5GqBXxzD4LuSVPSbyMjcHS6+YAYk8OwrqXKfDZFsitM7U9A==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(599823,"5Fq7fZd5GqBXxzD4LuSVPSbyMjcHS6+YAYk8OwrqXKfDZFsitM7U9A==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
title=查看该作者发表过的评论 
href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=Tony+Qu" 
target=_blank>查看</A>&nbsp;&nbsp;<A id=Comments1_CommentList_ctl04_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl04$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl04_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#599823">#5楼</A><A 
id=comment_anchor_599823 name=599823></A>[<SPAN 
class=louzhu>楼主</SPAN>]2006-12-21 22:50 | <A 
id=Comments1_CommentList_ctl04_NameLink href="http://www.cnblogs.com/tonyqus/" 
target=_blank>Tony Qu</A>&nbsp;<A class=sendMsg2This title=给此人发送站内短消息 
href="http://space.cnblogs.com/msg/send/Tony+Qu">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A> 
</DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_599823>@Tyrael <BR>谢谢指点</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("JesseZhao",654964,"iKivG+PWI3fttlyc754TYPS/NZIGiNrxZUDk4cprEveSVeyqg6TLxg==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(654964,"iKivG+PWI3fttlyc754TYPS/NZIGiNrxZUDk4cprEveSVeyqg6TLxg==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
title=查看该作者发表过的评论 
href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=JesseZhao" 
target=_blank>查看</A>&nbsp;&nbsp;<A id=Comments1_CommentList_ctl05_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl05$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl05_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#654964">#6楼</A><A 
id=comment_anchor_654964 name=654964></A>2007-02-24 16:38 | <A 
id=Comments1_CommentList_ctl05_NameLink href="http://www.cnblogs.com/jessezhao/" 
target=_blank>JesseZhao</A>&nbsp;<A class=sendMsg2This title=给此人发送站内短消息 
href="http://space.cnblogs.com/msg/send/JesseZhao">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A> 
</DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_654964>有点意思</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("冬冬",655745,"YCJnl4/301NYIbKxW6p77bJ7gzZWJLCrMGqA2On7nsB5ZB3oLmOAsw==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(655745,"YCJnl4/301NYIbKxW6p77bJ7gzZWJLCrMGqA2On7nsB5ZB3oLmOAsw==")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
title=查看该作者发表过的评论 
href="http://www.cnblogs.com/CommentsByAuthor.aspx?author=%e5%86%ac%e5%86%ac" 
target=_blank>查看</A>&nbsp;&nbsp;<A id=Comments1_CommentList_ctl06_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl06$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl06_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#655745">#7楼</A><A 
id=comment_anchor_655745 name=655745></A>2007-02-25 11:18 | <A 
id=Comments1_CommentList_ctl06_NameLink href="http://www.cnblogs.com/yuandong/" 
target=_blank>冬冬</A>&nbsp;<A class=sendMsg2This title=给此人发送站内短消息 
href="http://space.cnblogs.com/msg/send/å¬å¬">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</A> 
</DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_655745>@Jason Cui 
<BR>用XAML描述界面，分离代码，很有些ASP.NET的意思，呵呵。</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A onclick='ReplyComment("qu",665394,"")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(665394,"")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl07_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl07$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl07_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#665394">#8楼</A><A 
id=comment_anchor_665394 name=665394></A>2007-03-06 13:39 | <A 
id=Comments1_CommentList_ctl07_NameLink target=_blank>qu[未注册用户]</A> </DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body id=comment_body_665394>你好： 
<BR>我把程序在Vista系统上运行，时钟也是前一种显示，没有PM的那种， 
<BR>所以我想，应该与错作系统没有关系。</SPAN><BR></DIV></DIV>
<DIV class=feedbackItem>
<DIV class=feedbackListSubtitle>
<DIV class=feedbackManage>&nbsp;&nbsp;<A 
onclick='ReplyComment("interim",831847,"")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">回复</A>&nbsp;&nbsp;<A 
onclick='QuoteComment(831847,"")' 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#commentform">引用</A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl08_DeleteLink 
href="javascript:__doPostBack('Comments1$CommentList$ctl08$DeleteLink','')"></A>&nbsp;&nbsp;<A 
id=Comments1_CommentList_ctl08_EditLink CausesValidation="False"></A> </DIV><A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#831847">#9楼</A><A 
id=comment_anchor_831847 name=831847></A><A name=Post></A>2007-07-26 10:11 | <A 
id=Comments1_CommentList_ctl08_NameLink 
href="http://www.cnitblog.com/r.aspx?url=http://www.191k.com" target=_blank 
rel=nofllow>interim[未注册用户]</A> </DIV>
<DIV class=feedbackCon><SPAN class=blog_comment_body 
id=comment_body_831847>弄得不错。学习。</SPAN><BR></DIV></DIV>
<SCRIPT type=text/javascript>
    var commentAuthorHasChecked = false;
    var commentAuthorIsValid = false;
    var commentUrlIsValid = true;
    var commentEmailIsValid = true;
    var authenCodeHasChecked = false;
    var authenCodeIsValid = true;
    var hasLogined = false;
    
    function PostComment() {    
        
        var isValid = true;
        
        if($("#wrapAuthenCode").css("display")=="none"){
            ShowAuthenCode();
            $("#tip_AuthenCode").css("color","red");
            $("#tip_AuthenCode").html("请输入验证码！");
            isValid = false;
        }
        
        if(!hasLogined && !commentAuthorHasChecked){
            CheckAuthor();        
        }                
        if(!hasLogined && !commentAuthorIsValid){
            isValid = false;
        }
                       
        if(!authenCodeHasChecked){
            CheckAuthenCode();            
        }
        if(!authenCodeIsValid){
            isValid = false;
        }
        
        if(!hasLogined && !commentUrlIsValid){            
            isValid = false;
        }        
        if(!commentEmailIsValid){            
            isValid = false;
        }        
        if(!CheckCommentContent()){
            isValid = false;
        }    
        if(!isValid){
            return;
        }

        var content = $("#tbCommentBody").val();
        if(content.length>2000){
            alert("评论内容过长！不允许发布！");
            return;
        }        
        
       if ($("#span_comment_posted").html()!='' && $("#span_comment_posted").html()==content){
            alert("该评论已发表过!");
            return;
        }
        
        $("#tip_comment").html("评论提交中...");
        $("#span_comment_posted").html(content);
        //content = content.replace("'", "\\'");
        var email = $("#tbCommentEmail").val();
        var authenNum = $("#tbAuthenCode").val();
        var authenId = $("#span_comment_test").html();
        var comment = {};
        comment.authenNum = authenNum;
        comment.authenId= authenId;
        comment.parentId = 599334;
        comment.blogId = 8005;
        comment.sourceUrl = 'http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html';
        comment.author = $("#tbCommentAuthor").val();
        comment.url = $("#tbCommentAuthorUrl").val();
        comment.authenCode = $("#tbAuthenCode").val();
        comment.email = email;
        comment.title = '通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100';
        comment.content = content;
        comment.parentCommentId = $("#span_parentcomment_id").html();
        $.ajax({
            url: '/ws/CommentService.asmx/AddAnonymousComment',
            data: $.toJSON(comment),
            type: "post",
            dataType: "json",
            contentType: "application/json; charset=utf8",
            success: function(data) {
               if (data.d["IsSuccess"]) {
                    ShowCommentMsg("感谢您的回复:)");
                    //RereshComments2(comment.parentId);
                    $("#tbCommentBody").val('');
                    //$("#divCommentShow").html(data.d["ReturnData"]+content.replace(/\n/g,"<br/>")+"<br/><br/>");
                    $("#divCommentShow").html($("#divCommentShow").html()+data.d["ReturnData"]); 
                    $("#tip_AuthenCode").html('');
                    RefreshAuthenCode();
                    $("#tbAuthenCode").val("");                    
                    CommentNotify(data.d["CommentID"]);
                }
                else {
                    ShowCommentMsg(data.d["ReturnData"]);//"抱歉！评论提交失败！请与管理员联系。");
                    $("#span_comment_posted").html(''); 
                }
            },
            error: function(xhr) {
                ShowCommentMsg("抱歉！评论提交失败！请与管理员联系。");
                $("#span_comment_posted").html('');  
                //alert(xhr.responseText);
            }
        }
        );
    }
    
    function RefreshAuthenCode(){
        AjaxPost("/ws/CommentService.asmx/RefreshAuthenCode","{}",RefreshImg); 
        $("#lnkRereshAuthenCode").html("<span style='color:red'>刷新中...</span>");
        return false;
    }
    
    function RefreshImg(response){
       $("#imgAuthenCode").attr("src","/Modules/CaptchaImage/ValidCodeImage.aspx?id="+encodeURIComponent(response));
       $("#span_comment_test").html(response);
       $("#lnkRereshAuthenCode").html("看不清，换一个");
    }
    
    function ShowAuthenCode(){
        //if($("#wrapAuthenCode").css("display")=="none"){    
        //    AjaxPost("/ws/CommentService.asmx/RefreshAuthenCode","{}",ShowAuthenCodeOk);
        //}
        $("#wrapAuthenCode").show();      
    }
    
    function ShowAuthenCodeOk(response){
         UpdateAuthenCode();
         $("#tbAuthenCode").val("");
         $("#wrapAuthenCode").show();
         $("#tip_AuthenCode").html('');
    }  
 
    
    function CheckAuthor(isOnblur){
        commentAuthorHasChecked = true;
        var maxLength = 30;
        if($("#tbCommentAuthor").val().length == 0){
            $("#tip_author").html("请输入您的昵称！");
            commentAuthorIsValid = false;
            return false;
        }     
        else if($("#tbCommentAuthor").val().length > maxLength){
            $("#tip_author").html("昵称不允许超过" + maxLength + "个字符！");
            commentAuthorIsValid = false;
            return false;
        }
        else{
            //if(isOnblur){
                AjaxPost("/ws/CommentService.asmx/IsAuthorExist","{author:'"+$("#tbCommentAuthor").val()+"'}" ,OnCheckAuthorExist);
            //}
            //else{
            //    $("#tip_author").html("");
            //    commentAuthorIsValid = true;
            //}
            return true;
        }
   }
   
    function OnCheckAuthorExist(response){        
        if(!response){
            $("#tip_author").html("");
            commentAuthorIsValid = true;
        }
        else{
            $("#tip_author").html("该昵称已被使用，请更换昵称");
            commentAuthorIsValid = false;
        }
   }
   
    function CheckUrl(){
        var maxLength = 50;
        var url = $("#tbCommentAuthorUrl").val();
        
        if(url.length == 0){
            commentUrlIsValid = true;
            return true;
        }
        else if(url.length > maxLength){
            $("#tip_url").html("主页地址不允许超过" + maxLength + "个字符！");
            commentUrlIsValid = false;
            return false;
        }
        else if(url.indexOf("http://")!=0 || url.indexOf(".") < 0){
            $("#tip_url").html("主页地址要以“http://”开头");
            commentUrlIsValid = false;
            return false;
        }
        else{
            $("#tip_url").html("");
            commentUrlIsValid = true;
            return true;
        }
   }
   
   function CheckEmail(){
        var email = $("#tbCommentEmail").val();
        if(email.length>0){
            var regExp = new RegExp("\\w+@((\\w|\-)+\\.)+[a-z]{2,3}");
            if(!regExp.test(email)){
                $("#tip_email").html("请输入正确的邮件地址!");
                commentEmailIsValid = false;
            }
            else{
                commentEmailIsValid = true;
                 $("#tip_email").html("");
            }
        }
        else{
            commentEmailIsValid = true;
            $("#tip_email").html("");  
        }
   }
   
   function CheckAuthenCode(){
        authenCodeHasChecked = true;
        var num = $("#tbAuthenCode").val();
        var id = $("#span_comment_test").html();
        $("#tip_AuthenCode").css("color","red");
        if(num.length==0){
             authenCodeIsValid = false;
             $("#tip_AuthenCode").html("请输入验证码！");
             return;
        }
        else if(num.length!=4){
            authenCodeIsValid = false;
            $("#tip_AuthenCode").html("请输入四位数字！");
             return;
        }
        else if(new RegExp("(\d+)").test(num)){
            authenCodeIsValid = false;
            $("#tip_AuthenCode").html("请输入四位数字！");
             return;
        }
        else{
            AjaxPost("/ws/CommentService.asmx/CheckAuthenCode","{number:"+num+",id:'"+id+"'}", OnCheckAuthenCode);
        }
   }
   
   function OnCheckAuthenCode(response){
        if(response){
            $("#tip_AuthenCode").css("color","green");
            $("#tip_AuthenCode").html("验证码输入正确！");
            authenCodeIsValid = true;            
        }
        else{
            $("#tip_AuthenCode").css("color","red");
            $("#tip_AuthenCode").html("验证码输错啦！");
            RefreshAuthenCode();
            authenCodeIsValid = false;           
        }
   }
   
   function CheckCommentContent(){
    if($("#tbCommentBody").val().length==0){
        alert("请输入评论内容！");
        return false;
    }
    return true;
   }
    
</SCRIPT>

<DIV class=commentform id=ctl05_comment_form><BR>
<SCRIPT type=text/javascript>
    try {
        if (!blog_ad_has_shown) {
            GA_googleFillSlot("cnblogs_commentbox_up");
        }
    }
    catch (e) { }
</SCRIPT>
<BR><BR>
<DIV id=ctl05_divCommentPannel>
<DIV id=divCommentShow></DIV>
<DIV id=comment_nav style="TEXT-ALIGN: right"><SPAN 
id=span_refresh_tips></SPAN><A id=lnk_RefreshComments 
onclick="return RefreshCommentList(599334);" 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html###" 
name=commentform>刷新评论列表</A>&nbsp; <A onclick="return RefreshPage();" 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html###">刷新页面</A>&nbsp; 
<A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html#top">返回页首</A></DIV>
<DIV id=commentform_title>发表评论 <SPAN class=ad_commentbox_up><A 
href="http://job.cnblogs.com/zt/200912YesHJ/" 
target=_blank>沪江网技术部招聘程序员</A></SPAN></DIV><SPAN id=tip_comment 
style="COLOR: red"></SPAN>
<P>昵称：<INPUT class=author id=tbCommentAuthor onblur=CheckAuthor() 
onfocus=ShowAuthenCode()> <SPAN id=tip_author style="COLOR: red"></SPAN><A 
href="http://passport.cnblogs.com/login.aspx?ReturnUrl=http%3a%2f%2fwww.cnblogs.com%2ftonyqus%2farchive%2f2006%2f12%2f21%2f599334.html%3flogin%3d1%23commentform">[登录]</A> 
<A 
href="http://passport.cnblogs.com/register.aspx?ReturnUrl=http%3a%2f%2fwww.cnblogs.com%2ftonyqus%2farchive%2f2006%2f12%2f21%2f599334.html%23Top">[注册]</A> 
</P>
<P>主页：<INPUT class=url id=tbCommentAuthorUrl onblur=CheckUrl() 
onfocus=ShowAuthenCode()> <SPAN id=tip_url style="COLOR: red"></SPAN></P>
<P>邮箱：<INPUT class=email id=tbCommentEmail onblur=CheckEmail() 
onfocus=ShowAuthenCode()>(仅博主可见) <SPAN id=tip_email 
style="COLOR: red"></SPAN></P>
<P id=wrapAuthenCode style="DISPLAY: none">验证码：<INPUT id=tbAuthenCode 
onblur=CheckAuthenCode()> <SPAN id=tip_AuthenCode></SPAN><IMG id=imgAuthenCode 
alt=验证码 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ValidCodeImage.jpg" 
align=absMiddle> <A id=lnkRereshAuthenCode onclick="return RefreshAuthenCode();" 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html###">看不清，换一个</A> 
</P>
<P>评论内容：<SPAN id=tip_comment_content style="COLOR: red"></SPAN> <BR><TEXTAREA class=comment_textarea id=tbCommentBody onkeydown="return clt_enter(event)" onfocus=ShowAuthenCode()></TEXTAREA> 
<!--
<br /><input id="cbRememberMe" type="checkbox" />记住我的昵称和主页
--></P>
<P><INPUT class=comment_btn id=btn_comment_submit onclick="PostComment();return false;" type=button value=提交> 
&nbsp;&nbsp;<A 
href="http://passport.cnblogs.com/login.aspx?ReturnUrl=http%3a%2f%2fwww.cnblogs.com%2ftonyqus%2farchive%2f2006%2f12%2f21%2f599334.html%3flogin%3d1%23commentform">登录</A>&nbsp;&nbsp;<A 
href="http://passport.cnblogs.com/register.aspx?ReturnUrl=http%3a%2f%2fwww.cnblogs.com%2ftonyqus%2farchive%2f2006%2f12%2f21%2f599334.html%23Bottom">注册</A> 
</P>
<P>[使用Ctrl+Enter键快速提交评论] </P>
<DIV style="DISPLAY: none"><SPAN id=comment_edit_id></SPAN><SPAN 
id=span_parentcomment_id>0</SPAN> <SPAN id=span_parent_id>599334</SPAN> <SPAN 
id=span_comment_replyto></SPAN><SPAN id=span_comment_posted></SPAN><SPAN 
id=span_comment_test>kAFV+qtixkc=</SPAN> </DIV></DIV>网站导航：<A 
href="http://www.cnblogs.com/" target=_blank>博客园首页</A> | <A 
href="http://home.cnblogs.com/" target=_blank>个人主页</A> | <A 
href="http://home.cnblogs.com/ing/" target=_blank>闪存</A> | <A 
href="http://news.cnblogs.com/" target=_blank>IT新闻</A> | <A 
href="http://job.cnblogs.com/" target=_blank>程序员招聘</A> | <A 
href="http://space.cnblogs.com/" target=_blank>社区</A> | <A 
href="http://space.cnblogs.com/q/" target=_blank>博问</A> | <A 
href="http://wz.cnblogs.com/" target=_blank>网摘</A><BR><BR>
<SCRIPT type=text/javascript>
    try {
        GA_googleFillSlot("cnblogs_blogpost_bottom");
    }
    catch (e) { }
</SCRIPT>
<BR>
<DIV class=itnews id=itnews>IT新闻:<BR>· <A 
href="http://news.cnblogs.com/n/53421/" 
target=_blank>苹果CEO乔布斯遭MAC用户PS恶搞</A><BR>· <A 
href="http://news.cnblogs.com/n/53420/" 
target=_blank>移动联通电信定制三款MOTO智系列Android手机</A><BR>· <A 
href="http://news.cnblogs.com/n/53419/" target=_blank>Google手机Nexus One试用 
不支持多点触摸？</A><BR>· <A href="http://news.cnblogs.com/n/53418/" 
target=_blank>中国研制出世界最快反病毒虚拟机</A><BR>· <A 
href="http://news.cnblogs.com/n/53417/" target=_blank>英报炮轰：Google英国收入25亿美元 
没交半点税</A><BR></DIV>
<DIV id=div_ad2><A href="http://www.china-pub.com/itbook/" 
target=_blank>China-pub 计算机图书网上专卖店！6.5万品种2-8折！</A><BR><A 
href="http://www.china-pub.com/static07/0901/zh_jueba_090121.asp" 
target=_blank>China-Pub 计算机绝版图书按需印刷服务</A><BR></DIV><BR>
<DIV id=HistoryToday><B>历史上的今天:</B><BR>2004-12-21 <A 
href="http://www.cnblogs.com/tonyqus/archive/2004/12/21/80117.html">使用RegistryKey的一个注意点</A><BR></DIV>
<DIV id=div_commentbox_nav>链接：<A 
href="http://www.cnblogs.com/tonyqus/archive/2006/12/21/599334.html?switchskin=1#skinlist">切换模板</A><BR></DIV>
<DIV id=relative_search><BR><B>相关搜索:</B><BR><A 
href="http://zzk.cnblogs.com/s?w=Vista+%2f+.NET+3.0" target=_blank>Vista / .NET 
3.0</A> </DIV>
<DIV id=relative_search><BR><B>在知识库中查看：</B><BR><A 
href="http://kb.cnblogs.com/a/599334/">通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 
100</A></DIV><BR></DIV></DIV><!--end: forFlow --></DIV><!--end: mainContent 主体内容容器-->
<DIV id=sideBar>
<DIV id=sideBarMain><!--done-->
<DIV class=newsItem>
<H3 class=catListTitle>公告</H3>
<P align=center><IMG 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/r_msgdi.png"> 
</P><BR>
<H3>版权许可</H3>
<DIV class=boxinbox><A href="http://creativecommons.org/licenses/by-nc-sa/2.5/" 
rel=license><IMG 
style="BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; BORDER-RIGHT-WIDTH: 0px" 
alt="Creative Commons License" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/icon_creative_commons.gif" 
border=0></A>This work is licensed under a <A style="TEXT-DECORATION: underline" 
href="http://creativecommons.org/licenses/by-nc-sa/2.5/" rel=license>Creative 
Commons License</A>. </DIV><BR>
<H3>个人介绍</H3>
<DIV class=boxinbox>网名：Tony Qu<BR>本名：瞿杰<BR>目前居住于: 中国 上海<BR><IMG alt="" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/r_gmailicon.jpg"><BR><IMG 
alt="" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/r_msnicon.jpg"> 
<BR>通过msn在线联系我：
<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/PresenceButton.js" 
type=text/javascript></SCRIPT>
 
<DIV id=Microsoft_Live_Messenger_PresenceButton_87b02090e22b4525 
msgr:conversationUrl="http://settings.messenger.live.com/Conversation/IMMe.aspx?invitee=87b02090e22b4525@apps.messenger.live.com&amp;mkt=zh-cn" 
msgr:foreColor="#424542" msgr:altBackColor="#FFFFFF" msgr:backColor="#D7E8EC" 
msgr:width="100"></DIV>
<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/presence" 
type=text/javascript></SCRIPT>
<BR></DIV><BR>
<H3 style="COLOR: red">承接各类外包项目及有偿技术咨询
<H3>
<DIV id=profile_block><A href="http://home.cnblogs.com/tonyqus/" 
target=_blank>我的主页</A>&nbsp; <A href="http://home.cnblogs.com/tonyqus/detail/" 
target=_blank>个人资料</A><BR><A href="http://home.cnblogs.com/tonyqus/ing/" 
target=_blank>我的闪存</A>&nbsp; <A 
href="http://space.cnblogs.com/msg/send/Tony++Qu" 
target=_blank>发短消息</A></DIV></DIV>
<DIV id=calendar>
<TABLE class=Cal id=Calendar1_entryCal title=Calendar cellSpacing=0 
cellPadding=0 border=0>
  <TBODY>
  <TR>
    <TD colSpan=7>
      <TABLE class=CalTitle cellSpacing=0 border=0>
        <TBODY>
        <TR>
          <TD class=CalNextPrev><A title="Go to the previous month" 
            style="COLOR: black" 
            href="javascript:__doPostBack('Calendar1$entryCal','V2496')">&lt;</A></TD>
          <TD align=middle>2006年12月</TD>
          <TD class=CalNextPrev align=right><A title="Go to the next month" 
            style="COLOR: black" 
            href="javascript:__doPostBack('Calendar1$entryCal','V2557')">&gt;</A></TD></TR></TBODY></TABLE></TD></TR>
  <TR>
    <TH class=CalDayHeader scope=col align=middle abbr=日>日</TH>
    <TH class=CalDayHeader scope=col align=middle abbr=一>一</TH>
    <TH class=CalDayHeader scope=col align=middle abbr=二>二</TH>
    <TH class=CalDayHeader scope=col align=middle abbr=三>三</TH>
    <TH class=CalDayHeader scope=col align=middle abbr=四>四</TH>
    <TH class=CalDayHeader scope=col align=middle abbr=五>五</TH>
    <TH class=CalDayHeader scope=col align=middle abbr=六>六</TH></TR>
  <TR>
    <TD class=CalOtherMonthDay align=middle>26</TD>
    <TD class=CalOtherMonthDay align=middle>27</TD>
    <TD class=CalOtherMonthDay align=middle>28</TD>
    <TD class=CalOtherMonthDay align=middle>29</TD>
    <TD class=CalOtherMonthDay align=middle>30</TD>
    <TD align=middle>1</TD>
    <TD class=CalWeekendDay align=middle><A 
      href="http://www.cnblogs.com/tonyqus/archive/2006/12/2.html"><U>2</U></A></TD></TR>
  <TR>
    <TD class=CalWeekendDay align=middle>3</TD>
    <TD align=middle>4</TD>
    <TD align=middle><A 
      href="http://www.cnblogs.com/tonyqus/archive/2006/12/5.html"><U>5</U></A></TD>
    <TD align=middle><A 
      href="http://www.cnblogs.com/tonyqus/archive/2006/12/6.html"><U>6</U></A></TD>
    <TD align=middle>7</TD>
    <TD align=middle>8</TD>
    <TD class=CalWeekendDay align=middle>9</TD></TR>
  <TR>
    <TD class=CalWeekendDay align=middle><A 
      href="http://www.cnblogs.com/tonyqus/archive/2006/12/10.html"><U>10</U></A></TD>
    <TD align=middle>11</TD>
    <TD align=middle>12</TD>
    <TD align=middle>13</TD>
    <TD align=middle><A 
      href="http://www.cnblogs.com/tonyqus/archive/2006/12/14.html"><U>14</U></A></TD>
    <TD align=middle>15</TD>
    <TD class=CalWeekendDay align=middle>16</TD></TR>
  <TR>
    <TD class=CalWeekendDay align=middle>17</TD>
    <TD align=middle>18</TD>
    <TD align=middle>19</TD>
    <TD align=middle>20</TD>
    <TD align=middle><A 
      href="http://www.cnblogs.com/tonyqus/archive/2006/12/21.html"><U>21</U></A></TD>
    <TD align=middle>22</TD>
    <TD class=CalWeekendDay align=middle>23</TD></TR>
  <TR>
    <TD class=CalWeekendDay align=middle>24</TD>
    <TD align=middle>25</TD>
    <TD align=middle><A 
      href="http://www.cnblogs.com/tonyqus/archive/2006/12/26.html"><U>26</U></A></TD>
    <TD align=middle>27</TD>
    <TD align=middle>28</TD>
    <TD align=middle>29</TD>
    <TD class=CalWeekendDay align=middle>30</TD></TR>
  <TR>
    <TD class=CalWeekendDay align=middle>31</TD>
    <TD class=CalOtherMonthDay align=middle>1</TD>
    <TD class=CalOtherMonthDay align=middle>2</TD>
    <TD class=CalOtherMonthDay align=middle>3</TD>
    <TD class=CalOtherMonthDay align=middle>4</TD>
    <TD class=CalOtherMonthDay align=middle>5</TD>
    <TD class=CalOtherMonthDay align=middle>6</TD></TR></TBODY></TABLE></DIV>
<DIV id=leftcontentcontainer>
<DIV class=catListTag>
<H3 class=catListTitle>我的标签</H3>
<UL>
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/Microsoft/">Microsoft</A>(24)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/NPOI/">NPOI</A>(17)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/poi/">poi</A>(17)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/Excel+97/">Excel 97</A>(15)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/Excel+2003/">Excel 
2003</A>(15)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/xls/">xls</A>(15)
  <LI><A 
  href="http://www.cnblogs.com/tonyqus/tag/Silverlight/">Silverlight</A>(11)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/Adobe/">Adobe</A>(6)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/Flash/">Flash</A>(6)
  <LI><A href="http://www.cnblogs.com/tonyqus/tag/WPFæ&shy;ç§/">WPF揭秘</A>(4) 
  </LI></UL></DIV>
<DIV class=catListPostCategory>
<H3 class=catListTitle>随笔分类</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl01_Link 
  href="http://www.cnblogs.com/tonyqus/category/14650.html">.NET 1.1 技术(19)</A> 
  <A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl01_RssLink 
  title="Subscribe to .NET 1.1 技术(19)" 
  href="http://www.cnblogs.com/tonyqus/category/14650.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl02_Link 
  href="http://www.cnblogs.com/tonyqus/category/42553.html">.NET 2.0 技术(20)</A> 
  <A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl02_RssLink 
  title="Subscribe to .NET 2.0 技术(20)" 
  href="http://www.cnblogs.com/tonyqus/category/42553.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl03_Link 
  href="http://www.cnblogs.com/tonyqus/category/19506.html">.Net Application 
  Block(18)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl03_RssLink 
  title="Subscribe to .Net Application Block(18)" 
  href="http://www.cnblogs.com/tonyqus/category/19506.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl04_Link 
  href="http://www.cnblogs.com/tonyqus/category/24004.html">C/C++/VC++(3)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl04_RssLink 
  title="Subscribe to C/C++/VC++(3)" 
  href="http://www.cnblogs.com/tonyqus/category/24004.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl05_Link 
  href="http://www.cnblogs.com/tonyqus/category/95817.html">InfoPath(4)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl05_RssLink 
  title="Subscribe to InfoPath(4)" 
  href="http://www.cnblogs.com/tonyqus/category/95817.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl06_Link 
  href="http://www.cnblogs.com/tonyqus/category/14630.html">Java/Javascript(14)</A> 
  <A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl06_RssLink 
  title="Subscribe to Java/Javascript(14)" 
  href="http://www.cnblogs.com/tonyqus/category/14630.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl07_Link 
  href="http://www.cnblogs.com/tonyqus/category/182110.html">NPOI(20)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl07_RssLink 
  title="Subscribe to NPOI(20)" 
  href="http://www.cnblogs.com/tonyqus/category/182110.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl08_Link 
  href="http://www.cnblogs.com/tonyqus/category/14215.html">PHP(6)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl08_RssLink 
  title="Subscribe to PHP(6)" 
  href="http://www.cnblogs.com/tonyqus/category/14215.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl09_Link 
  href="http://www.cnblogs.com/tonyqus/category/129520.html">Silverlight(13)</A> 
  <A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl09_RssLink 
  title="Subscribe to Silverlight(13)" 
  href="http://www.cnblogs.com/tonyqus/category/129520.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl10_Link 
  href="http://www.cnblogs.com/tonyqus/category/44633.html">SQL Server(4)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl10_RssLink 
  title="Subscribe to SQL Server(4)" 
  href="http://www.cnblogs.com/tonyqus/category/44633.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl11_Link 
  href="http://www.cnblogs.com/tonyqus/category/77402.html">Vista / .NET 
  3.0(31)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl11_RssLink 
  title="Subscribe to Vista / .NET 3.0(31)" 
  href="http://www.cnblogs.com/tonyqus/category/77402.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl12_Link 
  href="http://www.cnblogs.com/tonyqus/category/35007.html">WAP(1)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl12_RssLink 
  title="Subscribe to WAP(1)" 
  href="http://www.cnblogs.com/tonyqus/category/35007.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl13_Link 
  href="http://www.cnblogs.com/tonyqus/category/49012.html">XML / XSLT(4)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl13_RssLink 
  title="Subscribe to XML / XSLT(4)" 
  href="http://www.cnblogs.com/tonyqus/category/49012.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl14_Link 
  href="http://www.cnblogs.com/tonyqus/category/15675.html">参考资料(7)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl14_RssLink 
  title="Subscribe to 参考资料(7)" 
  href="http://www.cnblogs.com/tonyqus/category/15675.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl15_Link 
  href="http://www.cnblogs.com/tonyqus/category/46325.html">翻译团队(42)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl15_RssLink 
  title="Subscribe to 翻译团队(42)" 
  href="http://www.cnblogs.com/tonyqus/category/46325.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl16_Link 
  href="http://www.cnblogs.com/tonyqus/category/14594.html">好书推荐(11)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl16_RssLink 
  title="Subscribe to 好书推荐(11)" 
  href="http://www.cnblogs.com/tonyqus/category/14594.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl17_Link 
  href="http://www.cnblogs.com/tonyqus/category/23590.html">科学计算器项目(13)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl17_RssLink 
  title="Subscribe to 科学计算器项目(13)" 
  href="http://www.cnblogs.com/tonyqus/category/23590.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl18_Link 
  href="http://www.cnblogs.com/tonyqus/category/19325.html">控件技术(3)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl18_RssLink 
  title="Subscribe to 控件技术(3)" 
  href="http://www.cnblogs.com/tonyqus/category/19325.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl19_Link 
  href="http://www.cnblogs.com/tonyqus/category/20840.html">其他(32)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl19_RssLink 
  title="Subscribe to 其他(32)" 
  href="http://www.cnblogs.com/tonyqus/category/20840.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl20_Link 
  href="http://www.cnblogs.com/tonyqus/category/48019.html">其他Web相关技术(5)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl20_RssLink 
  title="Subscribe to 其他Web相关技术(5)" 
  href="http://www.cnblogs.com/tonyqus/category/48019.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl21_Link 
  href="http://www.cnblogs.com/tonyqus/category/53961.html">软件工程(2)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl21_RssLink 
  title="Subscribe to 软件工程(2)" 
  href="http://www.cnblogs.com/tonyqus/category/53961.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl22_Link 
  href="http://www.cnblogs.com/tonyqus/category/78971.html">职场(12)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl00_LinkList_ctl22_RssLink 
  title="Subscribe to 职场(12)" 
  href="http://www.cnblogs.com/tonyqus/category/78971.html/rss">(rss)</A> 
</LI></UL></DIV>
<DIV class=catListPostArchive>
<H3 class=catListTitle>随笔档案</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl01_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/10.html">2009年10月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl02_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/09.html">2009年9月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl03_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/08.html">2009年8月 (4)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl04_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/05.html">2009年5月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl05_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/04.html">2009年4月 (8)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl06_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/03.html">2009年3月 (7)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl07_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/02.html">2009年2月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl08_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2009/01.html">2009年1月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl09_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2008/12.html">2008年12月 (8)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl10_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2008/11.html">2008年11月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl11_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2008/10.html">2008年10月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl12_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2008/08.html">2008年8月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl13_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2008/04.html">2008年4月 (4)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl14_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2008/02.html">2008年2月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl15_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2008/01.html">2008年1月 (3)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl16_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/12.html">2007年12月 (4)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl17_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/11.html">2007年11月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl18_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/10.html">2007年10月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl19_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/09.html">2007年9月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl20_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/08.html">2007年8月 (4)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl21_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/07.html">2007年7月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl22_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/06.html">2007年6月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl23_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/05.html">2007年5月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl24_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/04.html">2007年4月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl25_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/03.html">2007年3月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl26_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2007/02.html">2007年2月 (4)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl27_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/12.html">2006年12月 (7)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl28_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/11.html">2006年11月 (4)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl29_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/10.html">2006年10月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl30_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/08.html">2006年8月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl31_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/06.html">2006年6月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl32_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/05.html">2006年5月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl33_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/04.html">2006年4月 (6)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl34_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/03.html">2006年3月 (6)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl35_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/02.html">2006年2月 (14)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl36_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2006/01.html">2006年1月 (17)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl37_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/12.html">2005年12月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl38_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/11.html">2005年11月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl39_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/10.html">2005年10月 (3)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl40_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/09.html">2005年9月 (2)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl41_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/08.html">2005年8月 (3)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl42_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/07.html">2005年7月 (4)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl43_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/06.html">2005年6月 (1)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl44_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/05.html">2005年5月 (8)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl45_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/04.html">2005年4月 (10)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl46_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/03.html">2005年3月 (24)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl47_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/02.html">2005年2月 (6)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl48_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2005/01.html">2005年1月 (5)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl01_LinkList_ctl49_Link 
  href="http://www.cnblogs.com/tonyqus/archive/2004/12.html">2004年12月 (13)</A> 
  </LI></UL></DIV>
<DIV class=catListFavoritCategory>
<H3 class=catListTitle>收藏夹</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl01_Link 
  href="http://www.cnblogs.com/tonyqus/favorite/14736.html">.Net(90)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl01_RssLink 
  title="Subscribe to .Net(90)" 
  href="http://www.cnblogs.com/tonyqus/favorite/14736.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl02_Link 
  href="http://www.cnblogs.com/tonyqus/favorite/16010.html">ORM(9)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl02_RssLink 
  title="Subscribe to ORM(9)" 
  href="http://www.cnblogs.com/tonyqus/favorite/16010.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl03_Link 
  href="http://www.cnblogs.com/tonyqus/favorite/17246.html">Web编程(51)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl03_RssLink 
  title="Subscribe to Web编程(51)" 
  href="http://www.cnblogs.com/tonyqus/favorite/17246.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl04_Link 
  href="http://www.cnblogs.com/tonyqus/favorite/14367.html">数据库编程(32)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl04_RssLink 
  title="Subscribe to 数据库编程(32)" 
  href="http://www.cnblogs.com/tonyqus/favorite/14367.html/rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl05_Link 
  href="http://www.cnblogs.com/tonyqus/favorite/21313.html">英语学习(8)</A> <A 
  id=SingleColumn1_Categories_CatList_ctl02_LinkList_ctl05_RssLink 
  title="Subscribe to 英语学习(8)" 
  href="http://www.cnblogs.com/tonyqus/favorite/21313.html/rss">(rss)</A> 
</LI></UL></DIV>
<DIV class=catList>
<H3 class=catListTitle>CSS</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl03_LinkList_ctl01_Link 
  href="http://www.cssbeauty.com/" target=_blank>CSS Beauty</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl03_LinkList_ctl02_Link 
  href="http://cssvault.com/" target=_blank>CSS Vault</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl03_LinkList_ctl03_Link 
  href="http://www.csszengarden.com/" target=_blank>CSS Zen Garden</A> 
</LI></UL></DIV>
<DIV class=catList>
<H3 class=catListTitle>Microsoftie</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl01_Link 
  href="http://benwang1971.spaces.live.com/" target=_blank>Ben Wang</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl01_RssLink 
  title="Subscribe to Ben Wang" 
  href="http://benwang1971.spaces.live.com/feed.aspx">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl02_Link 
  href="http://dflying.spaces.live.com/" target=_blank>DFlying</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl02_RssLink 
  title="Subscribe to DFlying" 
  href="http://dflying.spaces.live.com/feed.rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl03_Link 
  href="http://home.wangjianshuo.com/" target=_blank>Jianshuo Wang</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl03_RssLink 
  title="Subscribe to Jianshuo Wang" 
  href="http://home.wangjianshuo.com/index.xml">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl04_Link 
  href="http://hush.spaces.live.com/" target=_blank>Justin</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl04_RssLink 
  title="Subscribe to Justin" 
  href="http://hush.spaces.live.com/feed.rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl05_Link 
  href="http://lixiong.cnblogs.com/" target=_blank>Li Xiong</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl05_RssLink 
  title="Subscribe to Li Xiong" 
  href="http://www.cnblogs.com/lixiong/Rss.aspx">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl06_Link 
  href="http://remycao.spaces.live.com/" target=_blank>Remy Cao</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl06_RssLink 
  title="Subscribe to Remy Cao" 
  href="http://remycao.spaces.live.com/feed.rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl07_Link 
  href="http://superrenyuan.spaces.live.com/" target=_blank>Ren Yuan</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl07_RssLink 
  title="Subscribe to Ren Yuan" 
  href="http://superrenyuan.spaces.live.com/feed.rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl08_Link 
  href="http://blog.run2me.com/roger/" target=_blank>Roger Wo</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl08_RssLink 
  title="Subscribe to Roger Wo" 
  href="http://blog.run2me.com/roger/Rss.aspx">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl09_Link 
  href="http://ruanzheng1983.spaces.live.com/" target=_blank>Ruan Zheng</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl09_RssLink 
  title="Subscribe to Ruan Zheng" 
  href="http://ruanzheng1983.spaces.live.com/feed.rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl10_Link 
  href="http://suyouquan.spaces.live.com/" target=_blank>Simon Su</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl10_RssLink 
  title="Subscribe to Simon Su" 
  href="http://suyouquan.spaces.live.com/feed.rss">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl11_Link 
  href="http://blog.joycode.com/tingwang/" target=_blank>Wang Ting</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl11_RssLink 
  title="Subscribe to Wang Ting" 
  href="http://blog.joycode.com/tingwang/Rss.aspx">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl12_Link 
  href="http://xiaozhuo.spaces.live.com/" target=_blank>Xiao Zhuo</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl12_RssLink 
  title="Subscribe to Xiao Zhuo" 
  href="http://xiaozhuo.spaces.live.com/feed.aspx">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl13_Link 
  href="http://blogs.msdn.com/yhhuang/" target=_blank>YanHong Huang</A> <A 
  id=SingleColumn1_Categories_CatList_ctl04_LinkList_ctl13_RssLink 
  title="Subscribe to YanHong Huang" 
  href="http://blogs.msdn.com/yhhuang/rss.xml">(rss)</A> </LI></UL></DIV>
<DIV class=catList>
<H3 class=catListTitle>WPF</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl01_Link 
  href="http://blogs.msdn.com/mgrayson/" target=_blank>Adventures with WPF</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl02_Link 
  href="http://blogs.vertigo.com/personal/AlanL/Blog/default.aspx" 
  target=_blank>AlanL</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl03_Link 
  href="http://www.contentpresenter.com/" target=_blank>contentpresenter.com</A> 

  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl04_Link 
  href="http://blogs.msdn.com/dancre" target=_blank>Dan Crevier's Blog</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl05_Link 
  href="http://eric.burke.name/dotnetmania/" target=_blank>eric burke</A> 
  <LI style="MARGIN-TOP: 2px">yahoo messenger 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl06_Link 
  href="http://blogs.interknowlogy.com/johnbowen/" target=_blank>John Bowen's 
  Blog</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl07_Link 
  href="http://joshsmithonwpf.wordpress.com/" target=_blank>Josh Smith on 
  WPF</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl08_Link 
  href="http://blogs.msdn.com/llobo/default.aspx" target=_blank>Lester's WPF 
  blog</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl09_Link 
  href="http://blogs.msdn.com/mikehillberg/" target=_blank>Mike Hillberg's Blog 
  on Wpf</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl10_Link 
  href="http://blogs.vertigo.com/personal/Ralph/Blog/default.aspx" 
  target=_blank>Ralph</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl11_Link 
  href="http://rrelyea.spaces.live.com/" target=_blank>Rob Relyea</A> <A 
  id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl11_RssLink 
  title="Subscribe to Rob Relyea" 
  href="http://rrelyea.spaces.live.com/feed.rss">(rss)</A> 
  <LI style="MARGIN-TOP: 2px">WPF Program Manager 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl12_Link 
  href="https://blogs.msdn.com/jnak/default.aspx?Ajax_CallBack=true" 
  target=_blank>See Win App</A> <A 
  id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl12_RssLink 
  title="Subscribe to See Win App" 
  href="https://blogs.msdn.com/jnak/rss.xml">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl05_LinkList_ctl13_Link 
  href="http://blogs.msdn.com/tims/" target=_blank>Tim Sneath</A> </LI></UL></DIV>
<DIV class=catList>
<H3 class=catListTitle>编程技术</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl01_Link 
  href="http://www.123aspx.com/rotor/default.aspx" target=_blank>.Net类库源代码</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl02_Link 
  href="http://www.c-sharpcorner.com/">C# Corner</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl03_Link 
  href="http://www.csharphelp.com/">C# Help</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl04_Link 
  href="http://www.developerfusion.com/" target=_blank>Developer Fusion</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl05_Link 
  href="http://www.gamedev.net/" target=_blank>GameDev.net</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl06_Link 
  href="http://www.vczx.com/">VC在线</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl07_Link 
  href="http://www.vckbase.com/" target=_blank>VC知识库</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl06_LinkList_ctl08_Link 
  href="http://www.koders.com/" target=_blank>源代码搜索引擎</A> </LI></UL></DIV>
<DIV class=catList>
<H3 class=catListTitle>软件图书下载</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl07_LinkList_ctl01_Link 
  href="http://www.netyi.net/in.asp?id=tonyqus" target=_blank>NetYi图书下载</A> 
</LI></UL></DIV>
<DIV class=catList>
<H3 class=catListTitle>收藏的blog</H3>
<UL>
  <LI><A id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl01_Link 
  href="http://blog.csdn.net/PowerShell/" target=_blank>CSDN PowerShell</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl02_Link 
  href="http://www.clariusconsulting.net/blogs/kzu/" target=_blank>Daniel 
  Cazzulino's Blog </A>
  <LI><A id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl03_Link 
  href="http://blog.joycode.com/lostinet/" target=_blank>lostinet</A> <A 
  id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl03_RssLink 
  title="Subscribe to lostinet" 
  href="http://blog.joycode.com/lostinet/Rss.aspx">(rss)</A> 
  <LI><A id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl04_Link 
  href="http://www.cnitblog.com/linghuye/" target=_blank>平民程序</A> <A 
  id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl04_RssLink 
  title="Subscribe to 平民程序" 
  href="http://www.cnitblog.com/linghuye/Rss.aspx">(rss)</A> 
  <LI style="MARGIN-TOP: 2px">关于游戏引擎设计开发，很不错的网站，有好多资源 
  <LI><A id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl05_Link 
  href="http://blog.joycode.com/luke/" target=_blank>怡红公子</A> <A 
  id=SingleColumn1_Categories_CatList_ctl08_LinkList_ctl05_RssLink 
  title="Subscribe to 怡红公子" 
  href="http://blog.joycode.com/luke/Rss.aspx">(rss)</A> </LI></UL></DIV>
<DIV class=catListBlogRank>
<H3 class=catListTitle>积分与排名</H3>
<UL>
  <LI class=liScore>积分 - 712530 
  <LI class=liRank>排名 - 41 </LI></UL></DIV>
<DIV class=catListComment>
<H3 class=catListTitle>最新评论<A id=SingleColumn1__2c1d782_RSSHyperlink1 
title=RSS订阅最最新评论 href="http://www.cnblogs.com/tonyqus/CommentsRSS.aspx"><IMG 
title=RSS订阅最最新评论 
style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/xml.gif"></A></H3>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl00_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2009/01/20/1378654.html#1709262">1.&nbsp;Re:[WPF系列教程] 
手把手教你做“咖啡”按钮</A> </DIV>
<DIV class=divRecentComment>这骗文章写得很好 是WPF入门的最佳文章之一 (Taven.李锡远) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl01_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2009/04/06/1429376.html#1702547">2.&nbsp;Re:NPOI 
1.2教程 - 2.2.4 设置单元格边框</A> </DIV>
<DIV 
class=divRecentComment>还有一个问题就是..我在开始时把行和列创建好了....在后面读取时..丢失了一些..我读不到了..单元格对像是空了! 
(超级大白) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl02_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2009/03/24/1419364.html#1702232">3.&nbsp;Re:NPOI 
1.2教程 - 2.1.2 创建DocumentSummaryInformation和SummaryInformation</A> </DIV>
<DIV class=divRecentComment>好东西，我现在用ExcelxmlWriter,可是生成报表对应Html和PDF格式，很困扰..~ 
(vice) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl03_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2009/04/06/1429376.html#1702162">4.&nbsp;Re:NPOI 
1.2教程 - 2.2.4 设置单元格边框</A> </DIV>
<DIV class=divRecentComment>你好,请问可以区域性地或者一行..或者全部一起设的边框的吗 (超级大白) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl04_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2005/12/02/288886.html#1698172">5.&nbsp;Re:ASP.NET 
2.0基于SQLSERVER 2005的aspnetdb.mdf部署</A> </DIV>
<DIV 
class=divRecentComment>如果我想我电脑上的多个网站都使用SqlProvider，而aspnet_regsql.exe这个只能注册一个数据库。要怎么实现呢？期待你的答复！ 
(霹雳游侠（小山）) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl05_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2006/04/19/378904.html#1697249">6.&nbsp;Re:关于asp.net 
Session丢失问题的总结</A> </DIV>
<DIV class=divRecentComment>不错. (无为而为) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl06_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2009/04/08/1429499.html#1694983">7.&nbsp;Re:NPOI 
1.2教程 - 2.2.5 设置单元格字体</A> </DIV>
<DIV class=divRecentComment>知道了。呵呵。 (雨魂) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl07_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2009/04/08/1429499.html#1694945">8.&nbsp;Re:NPOI 
1.2教程 - 2.2.5 设置单元格字体</A> </DIV>
<DIV class=divRecentComment>请问粗体怎么设置，谢谢。 (雨魂) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl08_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2006/11/23/569247.html#1694349">9.&nbsp;Re:VISTA音量控制 
[翻译]</A> </DIV>
<DIV class=divRecentComment>我跟前面幾位有相同問題在vista下無法正確執行音量控制的程序請問該如何解決我的Email: 
knife.wei@gmail.com (wayknfie) </DIV>
<DIV class=divRecentCommentAticle><A class=listitem 
id=SingleColumn1__2c1d782_CommentList_ctl09_Hyperlink2 
href="http://www.cnblogs.com/tonyqus/archive/2007/04/17/714038.html#1692640">10.&nbsp;Re:ActiveSync错误号85010014故障排除实践</A> 
</DIV>
<DIV class=divRecentComment>关于ActiveSync同步时出现85010014错误号的解决办法: 
昨日入手P3300,一直不能正常把原手机里的联系人导入P3300,原因是我电脑上开始没有装入OUTLOOK,后来补装,仍不能... (sparrow) 
</DIV></DIV>
<DIV class=catListView>
<H3 class=catListTitle>阅读排行榜</H3>
<UL>
  <LI><A id=SingleColumn1_ctl03_TopList_ctl01_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2007/04/17/714038.html">1.&nbsp;ActiveSync错误号85010014故障排除实践(34629)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl02_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2006/11/30/577097.html">2.&nbsp;WPF简介(30210)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl03_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2004/12/07/73710.html">3.&nbsp;Java中字符串比较的注意点(23624)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl04_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2006/04/19/378904.html">4.&nbsp;关于asp.net 
  Session丢失问题的总结(16586)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl05_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2006/10/24/522618.html">5.&nbsp;理解Session 
  State模式+ASP.NET SESSION丢失FAQ [翻译](15810)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl06_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/07/13/191783.html">6.&nbsp;一个简单的计算器源代码[VC6](12869)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl07_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/12/02/288886.html">7.&nbsp;ASP.NET 
  2.0基于SQLSERVER 2005的aspnetdb.mdf部署(12598)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl08_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/12/18/userprofilev2.html">8.&nbsp;使用ASP.NET 
  2.0 Profile存储用户信息[翻译] Level 200(11285)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl09_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/04/14/137811.html">9.&nbsp;c#实现科学计算器 
  —— 设计篇之词法分析模块设计(10597)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl10_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/04/14/137792.html">10.&nbsp;c#实现科学计算器 
  —— 总体分析篇(9461)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl11_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/10/22/260000.html">11.&nbsp;中文转换为完整拼音算法原理分析(9004)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl12_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2007/04/18/678434.html">12.&nbsp;[翻译] 
  构建完美的WPF开发工作站(8819)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl13_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/05/18/158357.html">13.&nbsp;javascript中如何通过被打开的窗体在opener窗体中添加option选项(8356)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl14_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/04/19/140266.html">14.&nbsp;c#实现科学计算器 
  实现篇之词法分析器(8353)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl15_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2007/05/10/721668.html">15.&nbsp;至打算在上海工作的毕业生们——关于社会保险和四金(8292)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl16_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/02/14/104274.html">16.&nbsp;ASP.NET技术内幕[强烈推荐](8173)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl17_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2006/03/12/344357.html">17.&nbsp;ASP.NET中大结果集的分页[翻译](7817)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl18_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2008/01/15/1028199.html">18.&nbsp;如何写招聘(7333)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl19_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2008/11/05/1326801.html">19.&nbsp;金融危机到来，程序员应该如何应对？(6283)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl20_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2007/02/24/wpf_ui_revolution.html">20.&nbsp;WPF——微软的UI革命(6172)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl21_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2008/04/06/1134759.html">21.&nbsp;搭建Silverlight2.0开发环境(6098)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl22_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2007/09/30/896936.html">22.&nbsp;闲话WPF近期发展(6012)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl23_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2006/12/02/579837.html">23.&nbsp;[转载] 
  Trados入门教程（图文解说）(6011)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl24_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2006/11/29/573399.html">24.&nbsp;[翻译]Windows 
  Vista的秘密4: 禁用UAC(5861)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl25_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/01/30/93684.html">25.&nbsp;RSS 
  2.0 规范[翻译](5545)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl26_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2007/02/05/637670.html">26.&nbsp;基于Visual 
  Studio 2003/2005的Office插件开发FAQ(5306)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl27_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2007/11/29/javascript_library2007.html">27.&nbsp;JavaScript的世界从来没有像现在这样精彩(5259)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl28_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/12/23/303019.html">28.&nbsp;SSIS入门教程（一） 
  - Execute Process包示例[翻译] Level 100(4787)</A> 
  <LI><A id=SingleColumn1_ctl03_TopList_ctl29_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/02/15/104576.html">29.&nbsp;HtmlTextWriter学习笔记(4586)</A> 

  <LI><A id=SingleColumn1_ctl03_TopList_ctl30_Hyperlink1 
  href="http://www.cnblogs.com/tonyqus/archive/2005/05/31/165552.html">30.&nbsp;c#科学计算器测试版发布(4456)</A> 
  </LI></UL></DIV></DIV></DIV><!--end: sideBarMain --></DIV><!--end: sideBar 侧边栏容器 -->
<DIV class=clear></DIV></DIV><!--end: main -->
<DIV class=clear></DIV>
<DIV id=footer><!--done-->Copyright ©2009 Tony Qu 
</DIV><!--end: footer --></DIV><!--end: home 自定义的最大容器 --><!-- Start of StatCounter Code -->
<SCRIPT type=text/javascript>
sc_project=1376588; 
sc_invisible=1; 
sc_partition=12; 
sc_security="44165bfb"; 
</SCRIPT>

<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/counter.js" 
type=text/javascript></SCRIPT>
<NOSCRIPT>
<DIV class=statcounter><A title="web analytics" 
href="http://www.statcounter.com/" target=_blank><IMG class=statcounter 
alt="web analytics" 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/counter.gif"></A></DIV></NOSCRIPT><!-- End of StatCounter Code --></FORM>
<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/shCore.js" 
type=text/javascript></SCRIPT>

<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/shLanguage.js" 
type=text/javascript></SCRIPT>

<SCRIPT type=text/javascript>
        try {
            SyntaxHighlighter.config.clipboardSwf = 'http://common.cnblogs.com/flash/clipboard.swf'
            SyntaxHighlighter.all();
        } catch (e) { }
    </SCRIPT>

<SCRIPT 
src="通过制作一个简单的时钟学习WPF中DispatcherTimer的使用 Level 100 - tonyqus_cn - 博客园.files/ShowHidden.js" 
type=text/javascript></SCRIPT>

<SCRIPT type=text/javascript>
        var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
        document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
    </SCRIPT>

<SCRIPT type=text/javascript>
        try {
            var pageTracker = _gat._getTracker("UA-476124-1");
            pageTracker._trackPageview();
        } catch (err) { }</SCRIPT>
</H3></H3></BODY></HTML>
